1. Field of the Invention
The invention relates generally to the transfer of data and more particularly to the communication of data across channels which employ multiple data transfer protocols.
2. Background of the Invention
Generally speaking, networks consist of a plurality of interconnected nodes. These nodes may comprise many different types of devices, including, but not limited to, workstations, storage devices, printers, scanners, modems, servers and the like. Networks may also comprise a set of interconnected sub-networks. The interconnection of the sub-networks may be desirable as a means to extend the physical reach of the network, as a means to extend the capabilities of the network, or for various other reasons.
The sub-networks which form a larger network may implement multiple, different protocols for the transfer of data between the devices on the respective sub-networks. Often, the selection of a particular protocol within a sub-network is a result of performance considerations. Because the types of data which are transmitted over different networks (and to the respective devices) may have different characteristics, they may be more efficiently transmitted using different protocols. For instance, a storage area network (SAN) may be efficiently implemented using the fibre channel protocol. This protocol is well-suited to the transfer of large amounts of data to and from storage devices over relatively short distances. It may, however, be less well-suited to the transfer of commands and other information which comprise very small amounts of data compared to the bulk transfers which are typically transferred to storage devices. The fibre channel protocol may also be less well-suited to the transfer of data over very large distances.
Because data may have to be transferred from one sub-network which implements a first protocol to another sub-network which implements a second protocol, it has been necessary to develop devices (e.g., routers) which are capable of receiving data which is formatted according to the first protocol and reformatting the data into the second protocol. It is necessary in the development of these trans-protocol devices to test them and verify that the data is not corrupted when it is reformatted from one protocol to another.
In the prior art, the verification of the reformatted data typically involves the use of a first analyzer which is configured to identify data formatted according to the first protocol, and a second analyzer which is configured to identify data formatted according to the second protocol. Generally, the data which is provided by the analyzers comprises raw data (e.g., hexadecimal values corresponding to the bits which are carried in the packets or frames of the respective protocols.) Accordingly, no means is provided for obtaining packets of data so that they can be further analyzed. The analyzers are normally separate and independent devices. Verification of the translating device's conversion of the data from the first protocol to the second protocol is accomplished by using the first analyzer to identify the raw data which is transferred to the device, using the second analyzer to identify the raw data which is produced by the device, and manually comparing the two to determine whether they are the same. The process of identifying the corresponding values within the input and output data streams and determining whether these values represent the same data can be a tedious, time-consuming and error-prone process.